package com.atguigu.jxc.service;

import com.atguigu.jxc.entity.Goods;
import com.atguigu.jxc.entity.Unit;
import com.atguigu.jxc.entity.vo.GoodsTypeList;

import java.util.List;

/**
 * @author luojia
 * @create 2022-01-01 15:26
 */


public interface GoodsService {

    /**
     * 查询当前库存，(根据商品类别，商品编码或名称搜索)
     * @param page
     * @param rows
     * @param codeOrName
     * @param goodsTypeId
     * @return
     */
    String listInventory(Integer page, Integer rows, String codeOrName, Integer goodsTypeId);

    /**
     * 查询当前库存，(根据商品类别，商品编码或名称搜索)
     * @param page
     * @param rows
     * @param goodsName
     * @param goodsTypeId
     * @return
     */
    List<Goods> queryAllGoods(Integer page, Integer rows, String goodsName, Integer goodsTypeId);



    List<Unit> queryUnit();

    void goodsTypeVoSave(String goodsTypeName, Integer pId);

    void goodsTypeVoDelete(Integer  goodsTypeId);

    void goodsAddUpdate(Goods goods, String goodsId);

    void goodsDelete(Integer goodsId);

    List<Goods> queryNoInventoryQuantityGoods(Integer page, Integer rows, String nameOrCode);

    List<Goods> getHasInventoryQuantity(Integer page, Integer rows, String nameOrCode);

    void updateGoods(Integer goodsId, Integer inventoryQuantity, double purchasingPrice);

    void deleteStock(Integer goodsId);

}
